package com.xhj.mybatis.scripting.xmltags;

import com.xhj.mybatis.session.Configuration;

import java.util.Collections;
import java.util.List;

/**
 * SetSqlNode
 *
 * @author XJks
 * @description 用于在 MyBatis 动态 SQL 语句中处理 <set> 标签，主要用于生成 UPDATE 语句中的 SET 子句。
 */

public class SetSqlNode extends TrimSqlNode {

    /**
     * 定义一个只包含逗号的不可变列表，用于分隔 SQL 语句中的各个字段
     */
    private static final List<String> COMMA = Collections.singletonList(",");

    /**
     * 构造方法，初始化 SetSqlNode 实例
     *
     * @param configuration MyBatis 的配置对象
     * @param contents      需要处理的 SQL 节点内容
     */
    public SetSqlNode(Configuration configuration, SqlNode contents) {
        super(configuration, contents, "SET", COMMA, null, COMMA);
    }

}
